package com.ruyuan.eshop.order.statemachine.action;

/**
 * 状态变更Action
 * 儒猿课堂: http://www.ruyuan2020.com
 * @Author zhonghuashishan
 * @Remark 有问题直接联系客服VX: ruyuan-1111 ，源码-笔记-技术交流群
 * @Version 1.0
 **/
public interface StateAction<E> {

    /**
     * 当前处理器处理哪种事件
     *
     * @return 事件
     */
    E event();

    /**
     * 状态变更
     *
     * @param event   状态变更事件
     * @param context 上下文信息
     */
    void onStateChange(E event, Object context);

}
